package cn.learn.service.module.impl;

import cn.learn.dao.module.ModuleDao;
import cn.learn.domain.module.Module;
import cn.learn.service.module.ModuleService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class ModuleServiceImpl implements ModuleService {

    @Autowired
    private ModuleDao moduleDao;

    /**
     * 分页展示所有内容
     * @param pageNum
     * @param pageSize
     * @return
     */
    @Override
    public PageInfo selectByPage(int pageNum, int pageSize) {
        PageHelper.startPage(pageNum, pageSize);
        List<Module> resultModule = moduleDao.selectAll();
        PageInfo resultData = new PageInfo(resultModule);
        return resultData;
    }

    /**
     * 查找全部模块
     * @return
     */
    @Override
    public List<Module> selectAll() {
        List<Module> resultModule = moduleDao.selectAll();
        return resultModule;
    }

    /**
     * 添加一条模块
     * @param module
     */
    @Override
    public void addOne(Module module) {
        moduleDao.addOne(module);
    }

    /**
     * 根据id查询一条
     * @param module
     * @return
     */
    @Override
    public Module findOneById(Module module) {
        Module resultModule = moduleDao.findOneById(module);
        return resultModule;
    }

    /**
     * 根据id修该一条内容
     * @param module
     */
    @Override
    public void updateOneById(Module module) {
        moduleDao.updateOneById(module);
    }

    /**
     * 根据id删除一条数据
     * @param id
     */
    @Override
    public void deleteOneById(String id) {
        moduleDao.deleteOneById(id);
    }

    /**
     * 根据角色id查询对应的权限
     * @param roleId
     * @return
     */
    @Override
    public List<Module> selectRoleModule(String roleId) {
        List<Module> resultData = moduleDao.selectRoleModule(roleId);
        return resultData;
    }

}
